{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Pipeline for the anomaly detection on the SKAB using LSTM-based NN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# libraries importing\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "\n",
    "# additional modules\n",
    "import sys\n",
    "sys.path.append('../utils')\n",
    "from evaluating import evaluating_change_point"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data loading"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# benchmark files checking\n",
    "all_files=[]\n",
    "import os\n",
    "for root, dirs, files in os.walk(\"../data/\"):\n",
    "    for file in files:\n",
    "        if file.endswith(\".csv\"):\n",
    "             all_files.append(os.path.join(root, file))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# datasets with anomalies loading\n",
    "list_of_df = [pd.read_csv(file, \n",
    "                          sep=';', \n",
    "                          index_col='datetime', \n",
    "                          parse_dates=True) for file in all_files if 'anomaly-free' not in file]\n",
    "# anomaly-free df loading\n",
    "anomaly_free_df = pd.read_csv([file for file in all_files if 'anomaly-free' in file][0], \n",
    "                            sep=';', \n",
    "                            index_col='datetime', \n",
    "                            parse_dates=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Data description and visualization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "A number of datasets in the SkAB v1.0: 34\n",
      "\n",
      "Shape of the random dataset: (1154, 10)\n",
      "\n",
      "A number of changepoints in the SkAB v1.0: 130\n",
      "\n",
      "A number of outliers in the SkAB v1.0: 13241\n",
      "\n",
      "Head of the random dataset:\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Accelerometer1RMS</th>\n",
       "      <th>Accelerometer2RMS</th>\n",
       "      <th>Current</th>\n",
       "      <th>Pressure</th>\n",
       "      <th>Temperature</th>\n",
       "      <th>Thermocouple</th>\n",
       "      <th>Voltage</th>\n",
       "      <th>Volume Flow RateRMS</th>\n",
       "      <th>anomaly</th>\n",
       "      <th>changepoint</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>datetime</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2020-03-09 12:14:36</th>\n",
       "      <td>0.027429</td>\n",
       "      <td>0.040353</td>\n",
       "      <td>0.770310</td>\n",
       "      <td>0.382638</td>\n",
       "      <td>71.2129</td>\n",
       "      <td>25.0827</td>\n",
       "      <td>219.789</td>\n",
       "      <td>32.0000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-03-09 12:14:37</th>\n",
       "      <td>0.027269</td>\n",
       "      <td>0.040226</td>\n",
       "      <td>1.096960</td>\n",
       "      <td>0.710565</td>\n",
       "      <td>71.4284</td>\n",
       "      <td>25.0863</td>\n",
       "      <td>233.117</td>\n",
       "      <td>32.0104</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-03-09 12:14:38</th>\n",
       "      <td>0.027040</td>\n",
       "      <td>0.039773</td>\n",
       "      <td>1.140150</td>\n",
       "      <td>0.054711</td>\n",
       "      <td>71.3468</td>\n",
       "      <td>25.0874</td>\n",
       "      <td>234.745</td>\n",
       "      <td>32.0000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-03-09 12:14:39</th>\n",
       "      <td>0.027563</td>\n",
       "      <td>0.040313</td>\n",
       "      <td>1.108680</td>\n",
       "      <td>-0.273216</td>\n",
       "      <td>71.3258</td>\n",
       "      <td>25.0897</td>\n",
       "      <td>205.254</td>\n",
       "      <td>32.0104</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2020-03-09 12:14:41</th>\n",
       "      <td>0.026570</td>\n",
       "      <td>0.039566</td>\n",
       "      <td>0.704404</td>\n",
       "      <td>0.382638</td>\n",
       "      <td>71.2725</td>\n",
       "      <td>25.0831</td>\n",
       "      <td>212.095</td>\n",
       "      <td>33.0000</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                     Accelerometer1RMS  Accelerometer2RMS   Current  Pressure  \\\n",
       "datetime                                                                        \n",
       "2020-03-09 12:14:36           0.027429           0.040353  0.770310  0.382638   \n",
       "2020-03-09 12:14:37           0.027269           0.040226  1.096960  0.710565   \n",
       "2020-03-09 12:14:38           0.027040           0.039773  1.140150  0.054711   \n",
       "2020-03-09 12:14:39           0.027563           0.040313  1.108680 -0.273216   \n",
       "2020-03-09 12:14:41           0.026570           0.039566  0.704404  0.382638   \n",
       "\n",
       "                     Temperature  Thermocouple  Voltage  Volume Flow RateRMS  \\\n",
       "datetime                                                                       \n",
       "2020-03-09 12:14:36      71.2129       25.0827  219.789              32.0000   \n",
       "2020-03-09 12:14:37      71.4284       25.0863  233.117              32.0104   \n",
       "2020-03-09 12:14:38      71.3468       25.0874  234.745              32.0000   \n",
       "2020-03-09 12:14:39      71.3258       25.0897  205.254              32.0104   \n",
       "2020-03-09 12:14:41      71.2725       25.0831  212.095              33.0000   \n",
       "\n",
       "                     anomaly  changepoint  \n",
       "datetime                                   \n",
       "2020-03-09 12:14:36      0.0          0.0  \n",
       "2020-03-09 12:14:37      0.0          0.0  \n",
       "2020-03-09 12:14:38      0.0          0.0  \n",
       "2020-03-09 12:14:39      0.0          0.0  \n",
       "2020-03-09 12:14:41      0.0          0.0  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# dataset characteristics printing\n",
    "print(f'A number of datasets in the SkAB v1.0: {len(list_of_df)}\\n')\n",
    "print(f'Shape of the random dataset: {list_of_df[0].shape}\\n')\n",
    "n_cp = sum([len(df[df.changepoint==1.]) for df in list_of_df])\n",
    "n_outlier = sum([len(df[df.anomaly==1.]) for df in list_of_df])\n",
    "print(f'A number of changepoints in the SkAB v1.0: {n_cp}\\n')\n",
    "print(f'A number of outliers in the SkAB v1.0: {n_outlier}\\n')\n",
    "print(f'Head of the random dataset:')\n",
    "display(list_of_df[0].head())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# random dataset visualizing\n",
    "list_of_df[0].plot(figsize=(12,6))\n",
    "plt.xlabel('Time')\n",
    "plt.ylabel('Value')\n",
    "plt.title('Signals')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Labels"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsIAAADVCAYAAABdXpbTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAAAjMklEQVR4nO3dfbxVZZnw8d/FAUGFAVOsSUSwMQXkRT0q2ZSkjdqLb5OZ5mOhKWNP2mSNZdlY+TTllE2lNiaOSs34mi9FiqMVkkORgYYoaEqBijKIpKgZCXo9f+wNHQ5vB9h7r7P3+n0/Hz7stfZ99ro4XGfva13nXveKzESSJEkqmx5FByBJkiQVwUJYkiRJpWQhLEmSpFKyEJYkSVIpWQhLkiSplCyEJUmSVEo9izrwTjvtlEOGDCnq8JIkSSqJ++6779nMHNh5f2GF8JAhQ5g1a1ZRh5ckSVJJRMTj69vv1AhJkiSV0iYL4Yi4KiKeiYiHNvB8RMTFETE/IuZExL61D1OSJEmqra50hCcBR2zk+XcBe1T/TAAu2/qwJEmSpPra5BzhzLwnIoZsZMjRwPczM4FfRcSAiPjrzFxcqyAlSZCZvLBiVdFhSC2lT68e9O7ZttWvs3LlShYtWsSKFStqEJW2VJ8+fRg0aBC9evXq0vhaXCy3C/Bkh+1F1X0WwpJUQ/MvPZY9lt3NkBXXNvS4g2Ip03v/I//wytnc+dr+DT22yuG3vT/ML14bwakrP93wYy/s80FW7XUUPU/4z616nUWLFtGvXz+GDBlCRNQoOm2OzGTZsmUsWrSIoUOHdulrGrpqRERMoDJ9gsGDBzfy0JLU9PZYdjcA//ze4Q097pAlP4UH4dxd5nDA6A839Ngqh94/XckhbbP558Mbm9u/eeI5eBR6PjJ5q19rxYoVFsEFiwh23HFHli5d2uWvqUUh/BSwa4ftQdV968jMicBEgPb29qzBsSWpdD7yt13rdNTMvJ3hQRi603aNP7bK4aeVvxqdXzfMbINHa/d6FsHF29z/g1osnzYZ+FB19YixwHLnB0uSpO4usHCth3HjxjXNvSI22RGOiOuAccBOEbEI+ALQCyAzvwtMAd4NzAdeBk6pV7CSJEk1Yx1cepvsCGfmiZn515nZKzMHZeaVmfndahFMVnwsM9+UmSMzszlOASRJUqm1Yh18zDHHsN9++zFixAgmTpwIQN++fTnvvPMYPXo0Y8eOZcmSJQAsXLiQQw45hFGjRnHooYfyxBNPADB+/Hg++tGPMnbsWHbffXemTZvGqaeeyrBhwxg/fvyaY330ox+lvb2dESNG8IUvfGGdWK666io+8YlPrNm+4oorOPvss+v3j98C3llOkiSVUivO6b3qqqu47777mDVrFhdffDHLli3jj3/8I2PHjuWBBx7g7W9/O1dccQUAZ511Fh/+8IeZM2cOJ510Eh//+MfXvM5zzz3HjBkz+OY3v8lRRx3F2Wefzdy5c3nwwQeZPXs2AP/yL//CrFmzmDNnDj//+c+ZM2fOWrEcf/zx/PjHP2blypUAXH311Zx66qmN+UZ0UUNXjZAkSeou6lUGf+nHc5n39As1fc3hb/wrvnDkiE2Ou/jii7n11lsBePLJJ3nsscfYZptteO973wvAfvvtx09+8hMAZsyYwS233ALAySefzKc//Zfl64488kgigpEjR/L617+ekSNHAjBixAgWLlzImDFjuPHGG5k4cSKrVq1i8eLFzJs3j1GjRq15jb59+3LIIYdw2223MWzYMFauXLnmdboLC2FJklRKrdYQnjZtGj/96U+ZMWMG2223HePGjWPFihX06tVrTfe7ra2NVas2fWOe3r17A9CjR481j1dvr1q1igULFnDRRRcxc+ZMdthhB8aPH7/em4mcdtppfOUrX2GvvfbilFO632VkFsKSJKmU6lUId6VzWw/Lly9nhx12YLvttuORRx7hV7/61UbHH3TQQVx//fWcfPLJXHPNNbztbW/r8rFeeOEFtt9+e/r378+SJUu44447GDdu3DrjDjzwQJ588knuv//+daZOdAcWwpIkqZRabfm0I444gu9+97sMGzaMPffck7Fjx250/CWXXMIpp5zC17/+dQYOHMjVV1/d5WONHj2affbZh7322otdd92Vt771rRsce/zxxzN79mx22GGHLr9+o1gIS5KkUmq1qRG9e/fmjjvuWGf/Sy+9tObxcccdx3HHHQfAbrvtxtSpU9cZP2nSpDWPhwwZwkMPPbTe5zo+7mjatGlrbU+fPr3brRaxmqtGSJIkqeaef/553vzmN7Ptttty6KGHFh3OetkRliRJpdSKy6d1JwMGDODRR2t4D+s6sCMsSZJKyTJYFsKSJKmUbAjLQliSJJVSq60aoc1nISxJkkrJjrAshCVJUimVoQ4eP348N910U9FhdNm73/1unn/++Y2OmTRpEk8//XRNjmchLEmSSsmOcPczZcoUBgwYsNExFsKSJElbrfUq4e9///uMGjWK0aNHc/LJJwNwzz33cNBBB7H77ruv6Q6/9NJLHHrooey7776MHDmSH/3oRwAsXLiQYcOGcfrppzNixAgOO+ww/vSnPwEwc+ZMRo0axZgxYzjnnHPYe++9AXj11Vc555xz2H///Rk1ahSXX345ULmxxtvf/nbe8573sOeee3LGGWfw2muvAXDdddcxcuRI9t57bz7zmc+siX/IkCE8++yzG4zjpptuYtasWZx00kmMGTNmTWxbykJYkiSVUqt1hOfOncuXv/xlpk6dygMPPMC3v/1tABYvXsz06dO57bbbOPfccwHo06cPt956K/fffz933303n/rUp8hMAB577DE+9rGPMXfuXAYMGMDNN98MwCmnnMLll1/O7NmzaWtrW3PcK6+8kv79+zNz5kxmzpzJFVdcwYIFCwD49a9/zSWXXMK8efP43e9+xy233MLTTz/NZz7zGaZOncrs2bOZOXMmP/zhD9f596wvjuOOO4729nauueYaZs+ezbbbbrtV3zNvqCFJklRLd5wL//tgbV/zDSPhXRdudMjUqVN5//vfz0477QTA6173OgCOOeYYevTowfDhw1myZAkAmcnnPvc57rnnHnr06MFTTz215rmhQ4cyZswYAPbbbz8WLlzI888/z4svvshb3vIWAD74wQ9y2223AXDXXXcxZ86cNd3m5cuX89hjj7HNNttwwAEHsPvuuwNw4oknMn36dHr16sW4ceMYOHAgACeddBL33HMPxxxzzFr/nvXFUWsWwpIkqZRarCG8Qb17917zeHXX95prrmHp0qXcd9999OrViyFDhrBixYp1xre1tW1y+kFmcskll3D44YevtX/atGnr3L1vc+7mt7lxbIkuFcIRcQTwbaAN+I/MvLDT84OB7wEDqmPOzcwptQ1VkiSpdup2i+VNdG7r5ZBDDuHYY4/lk5/8JDvuuCN/+MMfNjh2+fLl7LzzzvTq1Yu7776bxx9/fKOvPWDAAPr168e9997LgQceyPXXX7/mucMPP5zLLruMQw45hF69evHoo4+yyy67AJWpEQsWLGC33XbjhhtuYMKECRxwwAF8/OMf59lnn2WHHXbguuuu46yz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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plotting the labels both for outlier and changepoint detection problems\n",
    "list_of_df[0].anomaly.plot(figsize=(12,3))\n",
    "list_of_df[0].changepoint.plot()\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Method applying"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# libraries importing\n",
    "import numpy as np\n",
    "from tensorflow.keras.models import Sequential\n",
    "from tensorflow.keras.layers import LSTM\n",
    "from tensorflow.keras.layers import Dense\n",
    "from tensorflow.keras.callbacks import EarlyStopping, ModelCheckpoint, ReduceLROnPlateau\n",
    "from sklearn.metrics import mean_absolute_error, mean_squared_error\n",
    "from sklearn.preprocessing import StandardScaler"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Function for repeatability\n",
    "def Random(seed_value):\n",
    "    # 1. Set `PYTHONHASHSEED` environment variable at a fixed value\n",
    "    import os\n",
    "    os.environ['PYTHONHASHSEED']=str(seed_value)\n",
    "\n",
    "    # 2. Set `python` built-in pseudo-random generator at a fixed value\n",
    "    import random\n",
    "    random.seed(seed_value)\n",
    "\n",
    "    # 3. Set `numpy` pseudo-random generator at a fixed value\n",
    "    import numpy as np\n",
    "    np.random.seed(seed_value)\n",
    "\n",
    "    # 4. Set `tensorflow` pseudo-random generator at a fixed value\n",
    "    import tensorflow as tf\n",
    "    tf.random.set_seed(seed_value)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "def split_sequences(sequences, n_steps):\n",
    "    X, y = list(), list()\n",
    "    for i in range(len(sequences)):\n",
    "        # find the end of this pattern\n",
    "        end_ix = i + n_steps\n",
    "        # check if we are beyond the dataset\n",
    "        if end_ix > len(sequences)-1:\n",
    "            break\n",
    "        # gather input and output parts of the pattern\n",
    "        seq_x, seq_y = sequences[i:end_ix, :], sequences[end_ix, :]\n",
    "        X.append(seq_x)\n",
    "        y.append(seq_y)\n",
    "    return np.array(X), np.array(y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Training once in the beginning"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "# StSc = StandardScaler()\n",
    "# # scaler fitting\n",
    "# StSc.fit(X_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "# N_STEPS = 5\n",
    "# epochs = 25\n",
    "# batch_size = 32\n",
    "\n",
    "# # convert into input/output\n",
    "# X, y = split_sequences(StSc.transform(X_train), N_STEPS)\n",
    "# # the dataset knows the number of features, e.g. 2\n",
    "# n_features = X.shape[2]\n",
    "# # define model\n",
    "# model = Sequential()\n",
    "# model.add(LSTM(200, activation='relu', return_sequences=True, input_shape=(N_STEPS, n_features)))\n",
    "# model.add(LSTM(200, activation='relu'))\n",
    "# model.add(Dense(n_features))\n",
    "# model.compile(optimizer='adam', loss='mae', metrics=[\"mse\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "# model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "# early_stopping = EarlyStopping(patience=10, verbose=1)\n",
    "# model_checkpoint = ModelCheckpoint(\"lstm.h5\", save_best_only=True, verbose=0, save_weights_only=True)\n",
    "# reduce_lr = ReduceLROnPlateau(factor=0.1, patience=5, min_lr=0.0001, verbose=1)\n",
    "\n",
    "# history = model.fit(X, y,\n",
    "#                     validation_split=0.2,\n",
    "#                     epochs=epochs,\n",
    "#                     batch_size=batch_size,\n",
    "#                     verbose=2,\n",
    "#                     shuffle=False,\n",
    "#                     callbacks=[early_stopping, model_checkpoint, reduce_lr]\n",
    "#                     )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "# fig, (ax_loss, ax_acc) = plt.subplots(1, 2, figsize=(12,6))\n",
    "# ax_loss.plot(history.epoch, history.history[\"loss\"], label=\"Train mae (loss)\")\n",
    "# ax_loss.plot(history.epoch, history.history[\"val_loss\"], label=\"Validation mae (loss)\")\n",
    "# ax_loss.grid()\n",
    "# ax_loss.legend()\n",
    "\n",
    "# ax_acc.plot(history.epoch, history.history[\"mse\"], label=\"Train mse\")\n",
    "# ax_acc.plot(history.epoch, history.history[\"val_mse\"], label=\"Validation mse\")\n",
    "# ax_acc.grid()\n",
    "# ax_acc.legend()\n",
    "# plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "# model.load_weights(\"lstm.h5\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "# residuals = pd.DataFrame(y - model.predict(X)).abs().sum(axis=1)\n",
    "\n",
    "# UCL = residuals.quantile(0.99)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "# residuals.plot(figsize=(12,6))\n",
    "# plt.axhline(UCL, color='r')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Training in the beginning of each dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "# hyperparameters selection\n",
    "N_STEPS = 5\n",
    "EPOCHS = 25\n",
    "BATCH_SIZE = 32\n",
    "VAL_SPLIT = 0.2\n",
    "\n",
    "# inference\n",
    "predicted_outlier, predicted_cp = [], []\n",
    "for df in list_of_df:\n",
    "    X_train = df[:400].drop(['anomaly','changepoint'], axis=1)\n",
    "    \n",
    "    # scaler init and fitting\n",
    "    StSc = StandardScaler()\n",
    "    StSc.fit(X_train)\n",
    "    \n",
    "    # convert into input/output\n",
    "    X, y = split_sequences(StSc.transform(X_train), N_STEPS)\n",
    "    \n",
    "    # the dataset knows the number of features\n",
    "    n_features = X.shape[2]\n",
    "    \n",
    "    # model defining\n",
    "    model = Sequential()\n",
    "    model.add(LSTM(100, activation='relu', return_sequences=True, input_shape=(N_STEPS, n_features)))\n",
    "    model.add(LSTM(100, activation='relu'))\n",
    "    model.add(Dense(n_features))\n",
    "    model.compile(optimizer='adam', loss='mae', metrics=[\"mse\"])\n",
    "    \n",
    "    # callbacks defining\n",
    "    early_stopping = EarlyStopping(patience=10, verbose=0)\n",
    "    model_checkpoint = ModelCheckpoint(\"lstm.h5\", save_best_only=True, verbose=0, save_weights_only=True)\n",
    "    reduce_lr = ReduceLROnPlateau(factor=0.1, patience=5, min_lr=0.0001, verbose=0)\n",
    "    \n",
    "    # model fitting\n",
    "    history = model.fit(X, y,\n",
    "                        validation_split=VAL_SPLIT,\n",
    "                        epochs=EPOCHS,\n",
    "                        batch_size=BATCH_SIZE,\n",
    "                        verbose=0,\n",
    "                        shuffle=False,\n",
    "                        callbacks=[early_stopping, model_checkpoint, reduce_lr]\n",
    "                        )\n",
    "    \n",
    "    # loading the best saved weights\n",
    "    model.load_weights(\"lstm.h5\")\n",
    "    \n",
    "    # results predicting\n",
    "    residuals = pd.DataFrame(y - model.predict(X)).abs().sum(axis=1)\n",
    "    UCL = residuals.quantile(0.99)\n",
    "    \n",
    "    # results predicting\n",
    "    X, y = split_sequences(StSc.transform(df.drop(['anomaly','changepoint'], axis=1)), N_STEPS)\n",
    "    lstm_residuals = pd.DataFrame(y - model.predict(X)).abs().sum(axis=1)\n",
    "    prediction = pd.Series((lstm_residuals>3/2*UCL).astype(int).values, \n",
    "                                index=df[N_STEPS:].index).fillna(0)\n",
    "    \n",
    "    # predicted outliers saving\n",
    "    predicted_outlier.append(prediction)\n",
    "    \n",
    "    # predicted CPs saving\n",
    "    prediction_cp = abs(prediction.diff())\n",
    "    prediction_cp[0] = prediction[0]\n",
    "    predicted_cp.append(prediction_cp)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsIAAADVCAYAAABdXpbTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy86wFpkAAAACXBIWXMAAAsTAAALEwEAmpwYAABAY0lEQVR4nO3deZxcdZX//9fp7qwEQoCAQgKJEEIISzRRUFQiEYyjxnUEv8LIovxEhQFn9IujP1Hm546oCKJxgIwLMq5jRBBFDA4anDQhbGELaxKQhJAQICSd7jq/P2rpWu6te6vq3lq63s/HI3TXvbc+91PVl+7Tp889H3N3RERERES6TU+rJyAiIiIi0goKhEVERESkKykQFhEREZGupEBYRERERLqSAmERERER6UoKhEVERESkK/W16sR77bWXT5s2rVWnFxEREZEucdtttz3t7pPLt7csEJ42bRr9/f2tOr2IiIiIdAkzeyxou0ojRERERKQrRQbCZnalmW0ws7tD9puZXWJma8zsTjN7RfLTFBERERFJVpzSiCXApcAPQva/GZiR+3cUcHnuo4hIxxjKOMvu38Bd658lk3F6eozZL90NDO598jlm77sb82fuDcCy+zdwzxNbC9t6e6xinLD9rZDUnKLGGRjMcMkfH+DGezcwcWwfc/bfndsee4aHN27DDF621y7Mm7YH6zZvY8PWHXjueWbGSyaO5a1HvJTjDtkHCH+Pm/H+DmWcm+59imvvfIKntu5g8q6jGcxkuOPxLTz74iBemPnw/Ef1GmP6etgx6OwcHIKAbV507NhRvRiGk2H7zuH9PT097Dqml30njmPr9p08v2OQF3dmKsYcGAI8w+iy8avNqXTWlcqfMziUoS/G+eo5V9znhR1Tzznz7+1LdxvLk1u3szXga5nU85J+T6LGS+LrXe05VsO1F6anp4eJ40bxjjn78c9vPJjRfe1RlGDu0dM3s2nAte5+WMC+7wHL3P0nucf3A/Pd/clqY86bN8/La4R37tzJunXr2L59e/xXIDUbO3YsU6ZMYdSoUa2eikhbGMo4p1zxN25/fDMv7swUtufjK3cYN7qXI6dMxMxYtXYLLw4MMW50L3Om7s4PzziK3h4rjBO2v2HusP3Z2l6bO//PD2/jrvXPFuZ0+H4T+d4pc+m1+HOKGmdgyHnDRTfx3PahWl9VgRnMO2ASZhZ4HiCR1xL1Os/8QT8rHt2cyHjS/rYzmgH087CZdhvbR/9njm9qMGxmt7n7vPLtSdwstx+wtujxuty2qoFwkHXr1rHrrrsybdo0LKFvalLK3dm0aRPr1q1j+vTprZ6OSFtYdv+GbPBaFAQDZIryBNsGhlj5+BYAdgxmCttWrd3Csvs3sGDWPoVxtg0MBe5v2PffAE/cXtNTeoH/gGwh3NjcxieBr9Z26qhxRgN/oWhfvf6e+xhyniReSzW9wBXQ+OuQjuEOD/p+nDDwtVZPpWts3T7IpTc9yMdPmNnqqTT3ZjkzO9PM+s2sf+PGjRX7t2/fzp577qkgOEVmxp577qmsu0iRe57YyosD0ZnMHYOZQhCc9+LAEKuf2Bo6TvH+hj2xKplxRKTADGbY+lZPo+vc9lh7/NUliYzwemBq0eMpuW0V3H0xsBiypRFBxygITp/eY5FSs/fdjXGjewuZ3DBjcn/GKw6Gx43u5dB9dwsdp3h/w/Y4EJ5ZU9NTvPCfMga1fCeIGid0f1Lyk03gtVST+uuQtmMGD/lLWz2NrjP3gEmtngKQTCC8FPiYmV1D9ia5Z6Pqg7vFsmXLuOiii7j22mtZunQpq1ev5vzzzw88dsuWLVx99dV85CMfAeCJJ57gnHPO4ec//3kzpyzSlebP3Js5U3fnrw9tKtneY8PlEeOLaoTzx43P1QDnb6IrH2fcqNL9DZsyFzI74dw7Yz8lk6tbvvXhTWQcxo7q4RX7T6q5bjk/Tvlrz4+zczDD3H//Pc/tqL9GuMfgqOl7BL7HPzwjew/2oktv4Z5chr18DknIZJyT/+NWlj/8TCLjSXv7x95lfG3UYj4wEPyzWdKx29g+PnbcjFZPA4gRCJvZT4D5wF5mtg64ALJV5e7+XeA64B+ANcA24LS0JtsuhoaG6O3trek5ixYtYtGiRaH7t2zZwne+851CILzvvvsqCBZpkt4e44dnHMWB/3ZdyfbvnTyXD/3wNgC+/b6XFwLa/HH5bfkgLD/Oyy/8PVu3D/KFdx7G2+fsl1xXA/ds+qoG+Tm98eKbeeTpF/j48QdzxmtfVvOcyt+j8tc+uq+H5Z96I4d97obCc14+ZTduX7eVSeP72LJtkD12GcVh+03k5geeDjzH906ZW+gaEXae8xcewilX/i9T9xjH5942O/GuEb09xo8+eDQH/dt1FYnhSeP6GCgrjYHyu+8zDAxmGBjKkC85nzSul4HB7Gg7M87AUPbzfSaMwnqMHTszhXEzDi/mPh/bB5PGj2Z7bn/xeTa9MFA0fuW8guYUpfw5O4e88Hjj8wMMebaecmLZ+eo5V9znhR1Tzzl3uhe+DuNGGT0Yoy37V57xo4xdQqpF810jXrLbGP6+dQfPvrgzkddWy/Oixkvi613tOaVdIxx3r/m15btGvH3Ovm3VNSIyEHb390Xsd+Cjic2oBmm00Xn00UdZuHAhc+fOZeXKlcyePZsf/OAHHHrooZx44on84Q9/4JOf/CR77LEHF1xwATt27ODAAw/kqquuYsKECfzud7/j3HPPZfz48bz2ta8tjLtkyRL6+/u59NJLeeqpp/jwhz/Mww8/DMDll1/OJZdcwkMPPcScOXM4/vjj+ehHP8pb3/pW7r77brZv385ZZ51Ff38/fX19XHzxxbzhDW9gyZIlLF26lG3btvHQQw/xzne+k69+9asMDQ1xxhln0N/fj5lx+umnc9555zX0voiMdEHfO46f/ZLC50E3uwVt6+2xwjf4182YnHBrL6eeIoDeHmO3cdm74l85bY+651T8vKDXPqqvdNzXHrw3t6/byvJPvZEFX7+ZVx+4J6/Yf1JoIHz8oS+p2FZ+np7cHKZOGp/MDYgBenuM3h5jMFMaCn/9xDmFQD3Kt//4IF//wwMA3H7BwsL2a/73cc7/5V0A/OafX8/eu5belXfLg09z8hV/A+CV0/cqZMLL/evP7uDnt63jgD3Hc/Mn3hDvhTXgjCUr+ON9Gzh86u78+qPHpH6+NFx5yyNceO1qAP7p1dP51D/MgtufgV/DHz5+LEya1toJSku0bInlRqXZpuj+++/niiuu4JhjjuH000/nO9/5DgB77rknK1eu5Omnn+Zd73oXN954I7vssgtf+cpXuPjii/nkJz/Jhz70IW666SYOOuggTjzxxMDxzznnHI499lh+9atfMTQ0xPPPP8+Xv/xl7r77blatWgVkA/K8yy67LNtO6K67uO+++zjhhBN44IHsN9hVq1Zx++23M2bMGGbOnMnZZ5/Nhg0bWL9+PXffnV0DZcuWLQ29HyLSJurICDdTeTfOTG6DWfZfxj1W39Z2ZTX8EhL2ZSreHjReyf4qX2sr+5i2/FTa9+qLVhIaFN7Aoh6J0pXaNhD+/G/uqXqn9eZtA6zZ8Hyhfm/bwBC3PryJN3/rz0waPzrwOYfuuxsXvG125LmnTp3KMcdkf+M9+eSTueSSSwAKge2tt97K6tWrC8cMDAzw6le/mvvuu4/p06czY8aMwnMXL15cMf5NN93ED36QXZ+kt7eXiRMnsnlz+N2Tt9xyC2effTYAhxxyCAcccEAhEF6wYAETJ07Mvr5DD+Wxxx5j9uzZPPzww5x99tm85S1v4YQTToh8zSLSCerLCLdK/vuzYfSY4d7h8UYNb31YEFsc/AYdEhSrBY9f/TzJs5LzdqKeokjYKn6V6OQLUxrRHgUaddi2Y4hMRfYhu71R5d9Y8o932WUXINuL9/jjj2fVqlWsWrWK1atXc8UVVzR83nqMGTOm8Hlvby+Dg4NMmjSJO+64g/nz5/Pd736XD37wgy2Zm4gkrIMzwj2FjHDnSuSdt8BPg/dXOWE+kFNGOL7in+2mjLDktG1GOCpz+8d7n+Lsn9xe0qZo/OhePv/22Q3XjT3++OMsX76cV7/61Vx99dW89rWv5fbbh5vYH3300Xz0ox9lzZo1HHTQQbzwwgusX7+eQw45hEcffZSHHnqIAw88kJ/85CeB4y9YsIDLL7+cc889t1Aaseuuu/Lcc88FHv+6172OH//4xxx33HE88MADPP7448ycOZOVK1cGHv/0008zevRo3v3udzNz5kxOPvnkht4PEWkX7Z0RLg9zvZARhh6zbPKigwOOWrKvoaUREeOVZIzjjN+ky2E4bmzf6y9KT+AvIZ37eiQZHZsRzrcpGj+6F6OyjVEjZs6cyWWXXcasWbPYvHkzZ511Vsn+yZMns2TJEt73vvdxxBFHFMoixo4dy+LFi3nLW97CK17xCvbeO3gu3/rWt/jTn/7E4Ycfzty5c1m9ejV77rknxxxzDIcddhif+MQnSo7/yEc+QiaT4fDDD+fEE09kyZIlJZngcuvXr2f+/PnMmTOHk08+mS996UsNvyci0gY6LSOcyWeErahGuHPV8s6H1ROXZCUD9wcfG3acMsLx9SgjLAHaNiMcJd/KZ9n9G1j9xFYOTahrBEBfXx8/+tGPSrYV37wGcNxxx7FixYqK5y5cuJD77ruvYvupp57KqaeeCsA+++zDr3/964pjrr766pLH+Zvdxo4dy1VXXVV1TIBrr7228HlYtlhEOl37hiLloUT+cT4j7O4dHW/U8jtIvIxwxP7qZ8iN0ZzroVCK0b6XX6TSjLBqhCWrYwNhyAbDC2btk1oLHRGRRiSf/2z3jHDp6y2tETYy8dqNtoXgBexqKI0I2x7ZNaL6zXTl+5qfEW7f6y+KaoQlSMeWRqRl2rRphUysiEhDEo+D271GuOxxvkY4VxrheEWw3EkSyQhHpHxLnxejfVqzaoSb3a8tBSWlERV7O/e6lMYoEBYRSUnyP1rbPSNc/nh4Q/5muU4ONxKpEa6lfVqsjHCTSyOacrZ09AS9ucoIdz0FwiIinaLNM8LlMkVxe08PHV8jXFsf4ejtkTfLVZ1Kk2t2y+LGThScEe7gFySJUCAsIpKSVIK+do5EAvoI52fbaRnhwCA14aAp+Ea32mqEm2W4MqKNr78IpR05yj/plCtTkqZAWEQkJYnfLNfmGeHy15vNCA93N8h4N9UIJ9A+LVaNcJNKI6zJGegUlGaEy4qeO/i6lMYoEG5T8+fPp7+/v9XTEJEGJP+z1ds5Dg6sER7OCFOxGminqa1GOHp7YzXCza3ZbfbNeWmo2kdYGeGupUBYRCQlycfB7Z4RLpVxH64RHhF9hGtonxarRrj+9mm1HJOEkdA+rerKcp18YUpDFAgHeMc73sHcuXOZPXs2ixcvBmDChAl8+tOf5sgjj+Too4/mqaeeArILbRx33HEcccQRLFiwgMcffxzILnZx1llncfTRR/Oyl72MZcuWcfrppzNr1qySRTDOOuss5s2bx+zZs7ngggsq5nLllVdy7rnnFh5///vf57zzzkvvxYtIYpIvA2j3rhEBpRG5QCObEfYUeis3T02lEaHba+gaUa00osk3r42EjHDVPsIdfF1KYxQIB7jyyiu57bbb6O/v55JLLmHTpk288MILHH300dxxxx28/vWv5/vf/z4AZ599Nh/4wAe48847ef/7388555xTGGfz5s0sX76cb3zjGyxatIjzzjuPe+65h7vuuotVq1YB8IUvfIH+/n7uvPNObr75Zu68886Subz3ve/lN7/5DTt37gTgqquu4vTTT2/OGyEiVUUFusnHwZ2XEaYok5jJdHbirabSiNAa4ajnxTvhcDuz5tYId7KSjHB5Y+ROvjClIe27stz158Pf74o+btMaeP7vMOElsOdB1Y99yeHw5i9HDnnJJZfwq1/9CoC1a9fy4IMPMnr0aN761rcCMHfuXP7whz8AsHz5cn75y18CcMopp/DJT36yMM7b3vY2zIzDDz+cffbZh8MPPxyA2bNn8+ijjzJnzhx++tOfsnjxYgYHB3nyySdZvXo1RxxxRGGMCRMmcNxxx3Httdcya9Ysdu7cWRhHRFrLm56gbe8f1pU1wqWZxGxGuHMlsaBGveO1WgdNNVRP1Te8k69MaUT7BsJxPf/34Y9RgXAMy5Yt48Ybb2T58uWMHz+e+fPns337dkaNGlX4DbK3t5fBwcHIscaMGQNAT09P4fP848HBQR555BEuuugiVqxYwaRJkzj11FPZvn17xTgf/OAH+eIXv8ghhxzCaaed1vBrFJFkRP3oTCUj3MbRU2XXiNIa4aFMZ9cI1xIOxrpZLqhGOGaH22aXRgz3EW7f6y9KT9DfwLWgRteLFQib2ULgW0Av8B/u/uWy/fsD/wnsnjvmfHe/rqGZxcjcAvDbf4H+q2DeafCWrzd0SoBnn32WSZMmMX78eO677z5uvfXWqse/5jWv4ZprruGUU07hxz/+Ma973etin2vr1q3ssssuTJw4kaeeeorrr7+e+fPnVxx31FFHsXbtWlauXFlROiEireMRpQrJ5z/buzSiso9wUY1wD+wc6p4a4bCDA3vZhu6P0T6thik1YiSsLBdcn60a4W4XGQibWS9wGXA8sA5YYWZL3X110WGfAX7q7peb2aHAdcC0FOZb6S1fTyQAzlu4cCHf/e53mTVrFjNnzuToo4+uevy3v/1tTjvtNL72ta8xefJkrrrqqtjnOvLII3n5y1/OIYccwtSpUznmmGNCj33ve9/LqlWrmDRpUuzxRSRdygiXiuoaken0rhGJHBsv4xu1v/Jmr3Q1PQOdgsCOHcoId704GeFXAWvc/WEAM7sGeDtQHAg7sFvu84nAE0lOspnGjBnD9ddfX7H9+eefL3z+nve8h/e85z0AHHDAAdx0000Vxy9ZsqTw+bRp07j77rsD9xV/XmzZsmUlj2+55RZ1ixBpM1E/O5P/0dreGeFqfYQtt7JcJ0u8fVrAQVEZ4/LnNr2PcJPOl4bAPsLKCHe9OF0j9gPWFj1el9tW7HPAyWa2jmw2+OyggczsTDPrN7P+jRs31jHd7rNlyxYOPvhgxo0bx4IFC1o9HREpEvVn/sTbp7V9RrisRjgzHLD1GLk+wp0bcNSWEQ4pjYgYL3aNcP5js/sIt/H1F6V0Zbn8J/mMcNOnI20iqZvl3gcscfevm9mrgR+a2WHunik+yN0XA4sB5s2bp8suht13350HHnig1dMQkQDKCJcqfz8yJSvLZTPCHRwHJ9I1ImrBjLg1wsNt6ZpjJNQIl7ZPK3yW+9jBF6Y0JE5GeD0wtejxlNy2YmcAPwVw9+XAWGCvJCYoItKp2rFGOM0f95U1wsOfDy+o0d0i64JL6lirjZMLTJucoe3ghHDpLyGqEZacOIHwCmCGmU03s9HAScDSsmMeBxYAmNkssoFwXbUPnfxns06h91gkGdH/K7Vf14g0//cv/97ixQtqjISMcBLt06JqhIkXCVuzM8IVGdTOo4ywBIkMhN19EPgYcANwL9nuEPeY2YVmtih32L8AHzKzO4CfAKd6HdHW2LFj2bRpkwK1FLk7mzZtYuzYsa2eikjHi64RTvqESdQIp/f9tXppRK5GuIMDjmRKI+I/r+oSy3XMqREjoWtET0/A5AtxcOdel9KYWDXCuZ7A15Vt+2zR56uB8N5fMU2ZMoV169ahG+nSNXbsWKZMmdLqaYh0vObXCEM7Z4TLZbz4ZjnDOzwjXIvwm+Wqf/1KbqaLlRFubt+IDo6Dqy+x3MG/oElj2mpluVGjRjF9+vRWT0NEJJZO7COc1JTcveJP+4EZ4fI+wgmdvxVqW1Cjxu0B54hTI9ysyHQkZIRLa4QLG7Mfu+U3NKkQp0ZYREQCRJVxtePKckn9vA8ap/z1FpUIY7mb5To54EikRriGZ8bLCDfHcP60cyNh9RGWIAqERUTq1JEZ4YQmFTRKcEa4rDSi0fO2MF6prUY4pDQiYhDVCKenpDSi8Ikywt1OgbCISJ0ia4QT/9na+IBJlkZEjV1+s1wSSyy3sriipkC4xu1B+6uer7CyXHMi0+F2bU05XSpKM8KqEZYsBcIiIvWKvFmu/VaWS6w0InDsspXliqZbWFCjwfekpRnhWkoj6u4aEbM0IuZ4SWn+zXnJC1y+WhnhrqdAWESkTk1vn5ZEjXBCwXlwjXD5MUXzTSwj3DqJtE+roWtEta91szOzI6CNcPASy8oIdz0FwiIidWp6EimJPsKJZYQDSiMqaoRLM8LJ1Ai3sDSipmPDaoQjnhe46EP88dNihVKMztUT9OYqI9z1FAiLiNSp6TfLJZIRTkbwa6tcWS75GuHWSSYjHPG8gFxlo3NJUrOXdE5S4M1yygh3PQXCIiIxBN4c1uz2aW1UIxxn7Moa4QRWlmtpvJJAEJhYRri5mt2uLQ2B9dfKCHc9BcIiIjHEqYmN85wGZ0Gn1QgPdxvI3izXeBzcIV0jwtqn1dSLuJ1qhEdC14jhz4ffW2WEu50CYRGRGOL0zY3znMYm0T4Z4dprhLOBcUf3EU7g2MRqhJsckY6EjHDgghrKCHc9BcIiIjEE982N6hrRhivLJTORWCvLlfYRzrVPa/A9ae2CGgm0T6vhHO0UdA7Hje00q9oEL1+tjHC3UyAsIhJDjHvDat1dxyQ6bWW54cBpRNwsV9OxYV0j4rdPq3Zs00sjRnxGuPnzkfagQFhEJCXpZC/bNxQpf73FQbeZkcm0ssK3cYl0jaihNKLqcS1qn9bGl1+k4OWrlRHudgqERURiqO1mubR+uNafEU56RnFKRTLulX2EG80I5wZoxV/oa7vRrbbtQeeoXiMceyqJGA4bOzcS7gmqjVCNcNdTICwiEkOcm8Nq3V/7JBqvEU5uQY2AbRE3yyXRPq3j+wjXcrNcta4R8aeSjLL1JzqRVpaTIAqERURiiHNzWOX+xGfReI1wiu3TymWK2qf19ORvlkv/vO2hvpxwaY1wleNa1T6tuadNVEn7tPJSj865sCRhsQJhM1toZveb2RozOz/kmPea2Wozu8fMrk52miIi7Sf8Z6dH7K/3hFBvKJKfSmJzCvrFoKJGuHQl20wiJ0/pvQ08S6lmZISxwE8DDmtR+7QOjoSDO3IoI9zt+qIOMLNe4DLgeGAdsMLMlrr76qJjZgCfAo5x981mtndaExYRaYX6FtRonxrhwghp9hGuusSyJRJqdEz7tBq3D++vrUa4WYHpyKgRHv5cfYQlL05G+FXAGnd/2N0HgGuAt5cd8yHgMnffDODuG5KdpohIawXXCDe5NCKBH9ap9hGOaJ/m7o33EW7o2Y2pqX1a2MpyUe3Tgv583wZGQkY4sH2aMsJdL04gvB+wtujxuty2YgcDB5vZX8zsVjNbmNQERUTaQZzAr9b9dcyivfsIlz0OXFCj0fO2NCNcw7E1bg/aX7U0otkry42IJZaLCyLKIntlhLtWZGlEDePMAOYDU4A/m9nh7r6l+CAzOxM4E2D//fdP6NQiIukoDhrr+TGZeNfcBLpGpNo+rWxb8XTNLKEFNVoXsNTUPq3urhHxioSbHY9WZlA7jxWl/pQRlrw4GeH1wNSix1Ny24qtA5a6+053fwR4gGxgXMLdF7v7PHefN3ny5HrnLCLSFMVBW3DgFzVAsvNprxrh6G2lGeHsuRtun9YpGeGwQLiWrhHV2qe1qo9w58bBpX2E85QR7npxAuEVwAwzm25mo4GTgKVlx/w32WwwZrYX2VKJh5ObpohI83nI58PbWlEj3Ggkkl77tMoaYS9kOPNB3VCmwfM29vSG1FQjHLrEcsTzgm7oqjKXpsVvha9j5wpsn6aMcNeLDITdfRD4GHADcC/wU3e/x8wuNLNFucNuADaZ2WrgT8An3H1TWpMWEWmGktKIdqkRbnSEFLtGlM8v45RkhAEymUYzwq1MCad0bAcYCS8nMCOcp4xw14pVI+zu1wHXlW37bNHnDnw8909EZETw0Aehm8r2p1Aj3PCCGgmJ1Ue4aInlXCQ81MEBRxJLLNdyjra6WW4ERMKB5demjHC308pyIiIhSmqE62mflkpGuJNqhCu7DTSeEW7o6Q2prUa4vtII4pZGtGhluU5WtX1aB/+CJo1RICwiEqI4+K1rQY1kp5NQRrjZNcLZz/NBSKMZ4dZ2jWj82Mib5UqyllVulqthLkkYCRnhqu3TlBHuWgqERURClGaEq+8Pfn4KK8u1TUY4OkNenP3N1wgP1ZgRDmzJ1iI1rSxXb/u0uMc2vY9w5wtcWU4Z4a6nQFhEJIbgoLYFXSPapEY4TobcS1aWy37M1BhwVNYd1/T0RDWna0TMGuEa5pKEkZARDnxvR8ILk4YoEBYRCdFoRjh5SWSE01tZrlxxH+F8EFJzRriO86al2X2Eq52w6TXCIyRgzGeFR8ICIZIMBcIiIiEarRFOPGpLICOclDgLjGSKpjtcGtHYeZrVPi3oPEl0jaipj3DV8dvjOug0Ff2DtaBG11MgLCISIrprRMTzk4+EaZsa4cBfDMr7CFfeLFdzaUTE47QEnieBu+Wim0YEdTYIOK7pGeHmni8t4RlhBcLdSoGwiEiI6D7CTW6f5rRN14iQwUsfFrVPq/9muernSEvQ166m0ogkVpZrp64RIyQDPbzSYWFD9qMywl1LgbCISIiSleUC90c9P9n5tH9GuFRxRtjqzgh71cfNVFNCOPTgxjtPRO1Lw8jLCJe/IAXC3UqBsIhIiOIfjXUtsZzobEima0Sq7dNKHxffLFfoI9xgRrgZibuwOuSa2qeFbe/QGuEREgcXrkNlhCVPgbCISIjIGuHI0og2rBFOZiIxa4QpBBr5TFytGeHKc6QvbIq1ZYRDSiOinhezRrjZkenIyQjnAmHVCEuOAmERkTDFgXDbZIQbHSK99mmBdbW5j4Wb5WruGhF9jqSFnSKR9mkRg5RkhKu1T4s/lUSMnBrh0o/KCIsCYRERQtqBFbdPq2vMBiYUPCLtkxEOer8qlQcetS6x3Ioa4dDSiCTap9X5vIrjmr2y3MiIg4tKI8raqCkj3LUUCIuIEJ3xjdM3N2CEhuYUeMJGI5LEaoQDtgX23s2qpUa45CbFEZcRjnpezPZp8aciRXrK419lhLueAmEREUICu+LP26F9WiIZ4YRKI2IuMGJlNZlxaoSrrejXyhrh2oTVCMdfWa5q+zStLFeXipvllBHuegqERUQIy/g2FuiO5K4RIY2VK9SVES7+vAUp4bBfFpqTEY53bNMD4eaeLjXDv5hpZTnJUiAsIkK9GeGIMdsyI5yMuBnyihrhWksjKs6RvvCuEY3XCEc+zypzlY3OJQkjJCE83Ee4sEUZ4W6nQFhEhBg1woF9cyMyxm1YI5xcH+F4Yw+vLBd/QY1qv4C0MnFXW0a4vpXl4h6rjHB9KtqnKSPc9WIFwma20MzuN7M1ZnZ+lePebWZuZvOSm6KISPqi+gSPnIxwijXCVYau7Wa54gfl+5rRNSK9sWtblGOkhJ/tYzgjrK4RkhUZCJtZL3AZ8GbgUOB9ZnZowHG7Av8M/C3pSYqIpC0w+Kly01boc4Kfnoy2ygjHa5+WjzOGF9SobezK9mnpC60RrmGMetunlRxbNSPc7NKIkRGUl9+8qYywxMkIvwpY4+4Pu/sAcA3w9oDj/h34CrA9wfmJiLRM1Zu2Ko4I2NttK8tVaZ9mdWaEW7PEcvD2mrK5dd4sF3v8ZIaJf76REQfTk4t6VCMseXEC4f2AtUWP1+W2FZjZK4Cp7v7bBOcmItI00TXC8Z6TqkT6CDe7fVr2Yz4jHCcQrjZmczLCwWrLCNfXPq3k2Gory6lGuC49hbs3cxuUEe56Dd8sZ2Y9wMXAv8Q49kwz6zez/o0bNzZ6ahGRxHRPjXAygm8erDyulpvl8hnlaguZNKdGuHXt00qOrbpvpISmzRW+spx0qziB8HpgatHjKbltebsChwHLzOxR4GhgadANc+6+2N3nufu8yZMn1z9rEZEOkMpywG39N+rw9mn5P0nH6yPc2uxcaEY4gfc+uRrhhqfSlcrb+SkjLHEC4RXADDObbmajgZOApfmd7v6su+/l7tPcfRpwK7DI3ftTmbGISAqiuyDEy4BmWcT+Ovnw2LUqVEImdbNczK4Rw4FHnIxw5TjhQWmMSdYpifcodH6JZYSlHlpZTspFBsLuPgh8DLgBuBf4qbvfY2YXmtmitCcoItIMdS2o0eDKc7VLomtEej/wA2uEy0ojqmWEvewjtKiPcBKB8AirER4pym/eVEZY+uIc5O7XAdeVbftsyLHzG5+WiEhzRS2xXHvPiJTap7VLjXCNGeE4N8t57vWVvu/l7dOaUCOcwDkSqRGueqwi4XpULKhRoEC4W2llORERortC1LqARHZ/CrURbd1HOHzw4Zvlqo1Z+rHyQWvbp9UiNBCuZYw6xpfqyptGKCMsCoRFRIizOEZtgV92f8IS+GHd/IxwaQaueka4cpx2ap9Wi9DSiIRSwoqD61OZEVaNcLdTICwiAoE/B6MywuE/Oz1if73qzwgXsq1J9RGOuS0/21jt0wLet7Aa4TQTeEm8R+lnhBUK16OnEPWoRliyFAiLiJBSH+GkI+EEaoSTElVTnTdcIxzdSaMQ5FZdYrkZNcKNC20akVCNcHn3r9SF1tZ2FmWEpZwCYRERov/UH3cBiVr2166daoTjGc4IZz8OxZhAuy6xXIvwjHANXSOqHNvpAWmrFEp1hjdkPyoj3LUUCIuIUGf7tJbUCDfaNSKh0og0a4SLt9U5v0Yk8x41XhsRZ0GNZsdvnR4v9hQqIspXluvwFyZ1UyAsIkL8P/WX7o8as5EZBY7Y+AiJzSnezYMVfVurjph9fkn7tBYssZxIH2FlbNtST9gXptMjfKmbAmEREYJjn+LkZdvUCDdaGpHgVOJsK68RjjNmtUx8h8TBydQIV92nSLsehYxwfoMpI9ztFAiLiBAW2IXftFW+P+6YjUmgNCLFGuHgsfMry8Ufs+oNddHDNCyZGuGwleVqGaPazpqmIznlpTqFN1IZ4a6lQFhEhOBAt/GMcMISyQinWCMccFxtGeFcaUSVbh3NyQgn0D4tbHsNX7+qN8vVOB/JGs4Il7VPU0a4aykQFhGBwJ+DmZKMcLznlO5P+odrG2WE47ZPy3+sISNc0ke4Fe3TUu0aUcsg1cZXKFyP0PZpygh3LQXCIiKE1QiH37SVfU4Luka0SQAU1WUjr3trhMNWlqtljPr2SbiK61AZ4a6nQFhEhDh9hOM9p5b9tUsiI5xeaUTQm2SFGuH4KeE4Syx37spyNZRGVFtiWZFwXay8IqKQEW7FbKQdKBAWESGsRji8VjVsW+n+FH66ts2CGjHbpxUywvHHLK0RDk4Jp1kikWaQra4RrVUojVCNsOQoEBYRITj4KV37ISjwixizkQlVDJYfrXXt0zwiRV6tfVqsPsJtkhFOQhIZ2zgLakhtekIzwm1+QUlqFAiLiBCnRjjgOc1sn5YfrIUZ4chSkYBtw6URMcYPGCesRjjNsCXV9mkJrSwn9am4WU4Z4a6nQFhEhOguCHEDv1r21yapjHD9s6oWoIZto1AaUUP7tJKBQrpGpFkjnGb7tFpqhFX+kDgrL41QRrjrKRAWESG6NKLlNcJtkREu/sUgZo1w7mOsQLhwnuJzls8h/FxJSbV9mjLCLVVRGqGMcNeLFQib2UIzu9/M1pjZ+QH7P25mq83sTjP7o5kdkPxURUSaK1MUCQcHtc384dlgRrhwk1njMygaLugUJSpX8qoyftCYIY9T7RqRwBih7dMSGFvqN3yzXI4pI9ztIgNhM+sFLgPeDBwKvM/MDi077HZgnrsfAfwc+GrSExURSVNkRjjmc2rZX5NCRrjOp5eP08AUSsYLOkeRQkY4RpFwoWtErIxwelJtn1bLynJKCSeusn1angLhbhUnI/wqYI27P+zuA8A1wNuLD3D3P7n7ttzDW4EpyU5TRCRdgX/qj7pZro4x69dYRjiJALJqW7PikxSppX3acPlveAnGcLCcYmlEAmOE1wg3PobUb7hEp/jdNWWEu1icQHg/YG3R43W5bWHOAK5vZFIiIs0WnREOCpRrH7NuDdYIB2Vb651Cdrygc1RKuka4CffKJfN1U41wWwrMCJuhjHD36ktyMDM7GZgHHBuy/0zgTID9998/yVOLiDQkqn1aYN/cpi6xnFRGOKFZ1VojHGfIgCC3ojSiyrmSk0TXiLD2aeoa0UoVNcL5R8oId604GeH1wNSix1Ny20qY2RuBTwOL3H1H0EDuvtjd57n7vMmTJ9czXxGRVAT9qb2kj3Dgc6LGbHBSQYPVmxH20o+NjAHRpSR5wzfn11IjXKU0IoGb/iLnkWLXiGaPIaWGu0YUvbnKCHe1OIHwCmCGmU03s9HAScDS4gPM7OXA98gGwRuSn6aISLqiAt2OrxEu+1jfGHXUTNeyxHKcjHATUsJp1gg3ewwppYywlIsMhN19EPgYcANwL/BTd7/HzC40s0W5w74GTAB+ZmarzGxpyHAiIm0puEY4PDOZfU4Tf3g2nBFOuEY45jjDK8vFrxGOc0y7hy1JdHxQRjh5ge389EZ3tVg1wu5+HXBd2bbPFn3+xoTnJSLSZEGlEUV7C6UF8UOwZOPkxjLCw6M00D4t5PPCtsAa4ezH2laWCx8ziRKP6Hk0PkYyoZUCtKQVSiPKu0a0/a9WkhatLCciQpyMcOVxTf1rakI1wo38vC9tJxeQIQ94TqFGOMZPm+EhY7RPS3NluSRullONcFvqCcsIqzSiaykQFhEhLMNZGfiVZkUjukYke7dc7mOD7dMSmEHYOIE3y9WQER4eJ/jz4sftnxFOoDSi8WlImZ7AqEcZ4W6mQFhEhLCMcNH+wnHVbxiLGrNuiXWNaKA0oqEa4fjjRwXctZy/Hmn2Ea5pCKWEExdaI6yMcNdSICwiQnB2N6iPcLWOBpVjJimhrhFJpYRjLjBSU41w4BLLLWif1i6lEY0PIWUC26fpne5qCoRFREI0miRKJcnUxlnCoAAycCWvOsZppna5Wa6Nv9QdK7B9mjLCXU2BsIgI0X1xA7OVoaNZyXMS4Q1mhBPIpEb2Ea7SSDhe14jKccqHDCpRaUdqn9aeAm+WU41wV1MgLCJCWGBXGfiVBoNRN8slMrVS9dYI5z8m1Ue4yjmK1VYaEXCekJvl0tQ2GWH9yT5xhb9QFL+3ygh3NQXCIiJE1wjHyVaW70n0R2uDGWECAvk6hyidTsS2/Gzj3SwX1BotpH1amjfLtUmNsOLg5CkjLOUUCIuIENI1IlO0P/BJEWOl0T6tpRnh8P6+YduGa4STzQin2kdY7dNGrOEFNYoYygh3MQXCIiIhSjPCQTXCwT88vexjIhr8QZ1ETW19GeHhkCMqKxxVp138ON2McOOSWVBDoXDSeiw0Em7BbKQdKBAWESE6sBsObqvfMJbdnsaf75PKCDdQGhGrLKRU8XSj64SD2qcFzyHV9mltkh1sqzC4Td6TRhX6CKtGWHIUCIuIkGyNcFDQ3LCGu0bkPjYyhYgbBaMCyKhAON4NiR6yPTntEhIpIZy84T7CxVuVEe5mCoRFRAipES7ZVnkDXHhGuPr++jSaEU4gSx3x3Go3y0H01ANrhEPOkW5GuPExkllQQ5Fw0oIrI5QR7mYKhEVECA6sgjPC1W8YKz6mnbpGJHGTWWSNcMBziutcIwPhgCA3tH1aqnFLAl0jkrhZTnFw4oa7RpSvLKdAuFspEBYRIfpP/UHxV2hGOGJ/fRq9Wa70YyNjZGcT9H5Vf35kaURA2UP5eTwgM5+0dskIt5UR8oJCb0BURrhrKRAWESEsI1y0v4Ya4SR69laO2VhpRGGYhp5b/UbBau3ToJYa4ZJBg49p8xphtRFuT8Ht05QR7mYKhEVECKsRDshMxkgJe8UnSWi0NKLxGuFq3RzCthWXCMQujahWIxyyPUnJZIQTKRKWhIUuqKGMcNeKFQib2UIzu9/M1pjZ+QH7x5jZf+X2/83MpiU+UxGRVAV1jSjaG9TRIGykNGuEG2yf1sisPOTzattqyggHhLmh7dNSjFuSyDZrieX2NJwRLmufpoxw1+qLOsDMeoHLgOOBdcAKM1vq7quLDjsD2OzuB5nZScBXgBPTmHBSBgYzfPPG+/nvlet59sWdkX/CNDNG9Rpj+nrYMejsHByK/N+m/DmDQxn6IsZI4jzVnlN87MAQ4BlGp3Suet+HWs9R75xG9/Wwx/hRgPHMCwMMNPnr0YqvRb3nHWnvQ9A1GZTB+9oN9xY+/7+/uIPP/vedjO7rLWz74m/v4SvXra64fl8YyC5J98Plj7B01Vq274x/HY8d1YthOJmS5+3LRm7shc/891388lfX1fQeFM/pZyvWsvT2dXjI+xD1PSrvwqV3cdENq0vmODhUedxv73yCV03bg9cfPJkXBwarvANw0vf+intpNvWsH/bT10vhmnhue3aMx5/ZxpzP35DY99Hi5/X2BOeILvr9fZxz3MGM7ovOIRX/NeGP9z7F/Jl709tjDGWCt+cNDA4vZ/iz/rXMPWBS4PkyuXHWPrMtcJyk5V/PXeufbcr50jCUcR7e+AIANz+4kbcc/tLca1BGuJtZ1G++ZvZq4HPu/qbc408BuPuXio65IXfMcjPrA/4OTPYqg8+bN8/7+/sTeAm1GxjMMPffb+C5HZnog0VE2sAU28gtY/6ZT+w8k58NzW/1dGrWA4yE77gTx/Wx4tPHVw2GhzLOKVf8jb8+tAmA8aN7mTN1d5ac9ipOvep/K7b/8Iyj6O0xBgYzvPILf+DZF4d/YQg631DGWXTpLdzzxNbAcZI2lHGOv/hmHn76haacLw35r8mKR59h55CXvoZvzIKDFsDbL2v1NCVFZnabu88r3x6ZEQb2A9YWPV4HHBV2jLsPmtmzwJ7A0/VNNyWbH4XFb2DUi89wJ8CYFs9HRKRGX+1bzGH2CBcMntbqqdRkJATBAM++OMilNz3Ix0+YGXrMsvs3sGrtlsLjbQNDrFq7hUtvejBw+7L7N7Bg1j5cetODJUFw2PmW3b+BNRueDx0nacvu38C6zduadr405L8mO4ey+bmS1/D8Rrj9R9l/VY2UX+dabO9Z8JFbWz2LgqbeLGdmZ5pZv5n1b9y4sZmnznru7/DiMxjZkiD90z/9079O+kfue9f7e//Y/O+fUnDbY5ur7r/nia28OFBaJ/LiwBD9j20O3L46l9ntDxm3/Hz3PLG1pISifJyk3fPE1kIA2YzzpSHsa7L6ia3g1Ut2hikITsSGe6OPaaI4GeH1wNSix1Ny24KOWZcrjZgIbCofyN0XA4shWxpRz4Qbsv/RsPcsfMO9qosXkY7146EFrZ5CV5t7wKSq+2fvuxvjRveyrSjwGje6l3kHTGLV2i0V2w/ddzcA5h0wqVA2Ue18YePnx0las8+XhqqvYe9Z8YKz3tEwNJDiLLvE3rNaPYMScQLhFcAMM5tONuA9Cfg/ZccsBT4ALAfeA9xUrT64pT5yKztVIywi0lQj5Y/KE8f18bHjZlQ9Zv7MvZkzdXdWrd3CiwNDjMvVo37suBn0P7a5Yvv8mXsD8LHjZvCfyx+tqBEuP1/Y+Plxktbs86Wh6muY1T5/ppfmi7xZDsDM/gH4JtALXOnuXzCzC4F+d19qZmOBHwIvB54BTnL3h6uN2cqb5aCya0SU0ruQMxV/lorznJ1DHjlGEuep9pzSO/Qdd0/tXGHPiXofaj1HvXPKd41wg2eeH2j616MVX4t6zzvS3oega7LQRaTH2LZ9kAzOwODwfPJzy3Z1gAzOjp3h12/UcWFzqvV5cd6DsP31/r8ZNseenh52G9vHEfvtxtPbBnhyyw72mzSO04+ZzusPnsxlf3qQG1c/RcadieNHFxpYuTubtw2w6fmBkq+FG2x+YWfJNZHW99Hi540b3ceuY/s4cO9d6AEe3PACZsYbD907dteIoYyz7P4NrH5iK4fuu1tJ14ig7XkDgxkuvelBbntsM3MPmMTHjpsReL6ocZLW7POlYSS8Bqlf2M1ysQLhNLQ6EBYRERGR7hAWCGtlORERERHpSgqERURERKQrtaw0wsw2Ao+15OS124t264ksI4muL0mTri9Jm64xSVNS19cB7j65fGPLAuFOYmb9QXUlIknQ9SVp0vUladM1JmlK+/pSaYSIiIiIdCUFwiIiIiLSlRQIx7O41ROQEU3Xl6RJ15ekTdeYpCnV60s1wiIiIiLSlZQRFhEREZGupEAYMLMprZ6DjGxmNq7Vc5CRS9/DJE1mNqrVc5CRzcz2zX1s+prXXR0Im9kEM7sY+L2Z7d/q+cjIk7vGLgX+w8wWmtnEVs9JRg59D5M0mdmuZvZt4MtmdnSr5yMjj5ntkvsedoOZ7ektqNft2kDYzN4A9AN9wDx3f7zFU5KR6ZvAaOCXwPuA81s6Gxkx9D1M0pTLAn+fbJzwIPAZMzuztbOSkcTMFgH3ANuAY9x9Uyvm0deKk7aJF4EtwPnuvs3MZgMb3X1Da6clI4WZ7QXsC7zX3Z83szXAeWb2IXf/founJ51vAH0Pk/TsA0x395MAzOwJ4E1mtsjdl7Z2ajJCDAC97v4ZADM7CHjK3Z9r5iS6pmuEmU0HDnP33xRt+yawKzAZ2A14Abge+M9mfyGk8+X+J/4gsAL4rbtvN7PfA9e5+zfNbAywEDgdOM3dn2nhdKXDhFxf3wbGo+9h0qDc9XU2sAr4We6X9+uBH7n7j81sD+AkYCbwGV1fUquQa+zXwCayfzndG8gAlwA3ufv2ZsyrK0ojzOxc4F7gbDM7tmjXRcDLyL7h88n2qpsB/EOz5yidy7I+S7b8YTtwKvDj3O5vAgvNbHd33wHcCTwCvKIFU5UOFHJ9XZ3bre9h0jAzuxD4BfAk8Bbgp7ldvwBea2YTcr+43wE48JKWTFQ6VsA19ovcrn8BjgVuc/cTgN8CbwJe3qy5dUtpxONks3C7AG8zs7+6+053X2dmJ7n7UwDu/mszew/ZehWRuF5C9k88i9z9UTPbBbjXzA4E/kz2f/r/C3zK3R8xs2lkM3cicYRdX4e4+31m9j53/zvoe5jULncD76PACe7+VO6myy/mdv8VmEP2l69Lc48vAS5v+kSlY4VdY2Y23t3XmNmx7r4ud/ilwJ+Aa5o1v67ICAO/cfergfuBccC7IJtpyQfBucdHAvsDT7dkltKpNgD/lQtSRgNDwF+Abe7+PNms8LvN7J25O68nA01vESMdK+j6ugV4HiAfBIO+h0nt3P1Z4KpcgPJK4G/ABDO7AFgDLAX+yczmA0cAm+me2EESEHKN7QL8W27/uqLD5zB8/0NTjKiLOfdDooK778x9upLsn6bnm9lUd3cz6zWzyWa2FPgecLm7L2/SlKXDBF1j7j7k7o/kPh8AxgJHkq11wt0fJPvnn6PI3oV9ubv/tWmTlo5Rw/U1h+wPi3zpxN65Wjt9D5NQVX5Gem7fvsAngP8DzAXOcvffk83S/RPwM7IBzb1NmrJ0mBqusfcDh5vZebnnTTGzX5L9a8OVzbzGRszNcmb2OWA68Dvg9/k2HGb2ptxjzz1+Bdn/yVe6+9VmNtndN5rZqe6+pDWzl05Q5RpbCNxQdI29AzjF3d+daw4+pllF/9K56rm+co/H5m6c0/cwCRX3+io6fgHwHXefmXs8Jnefg0igOq+xS4FDgT2Bd7n74qZOmhGQETazI83sf4EpwK/IBrnvNrMeM3s5sB8wJheQ4O4rgZuAc81sG/DO3PYlrZi/tL8Y19i+ZK+x/P9PE4Hfmtk7gfvI1giLBGrk+jKzB4C3gr6HSbC411fAU6eSvc76ABQES5gGr7HrgR53f7oVQTCMjJvlngN+4O6XApjZVOBV7r7YzO5y99vzB+b+h96LbOp9LfBmd7+5FZOWjhL7Gst5N9k2ab8FPuju/9Pc6UqHaeT6OkPXl0So5Wfk7sBhwOdymz7p7oNNnq90nkavsaEmz7dEx2WEzWyPXCakN7fpEeCqfMaXbI/NiWbWV/w/cO7POoPAVuBCd3+tgmAJ0sA1Njb36SrgdHd/p4IUKafrS9LUwPXVBzwLHEy2d/Abc39BFSkx0q6xjsoIW7Yt0FXAXcAocr0O3b24FdUC4NGyN/8Qsne9ftvdnwSuaN6spZM0eI2damZfcvfPNnHK0kF0fUmaGr2+gK+6+5VNm7B0nJF4jXVUIEx29ZFzyfZgPdbMbs614zCyNSZDZFsHLQUws3lkf1N5ErjItZKXRGvkGvtqrk2MSBhdX5KmRq8v/YyUKCPuGmvb0oiiFHux/3H3K8iuErcD+EfItuUg16qKbEH2FDO7Gvg0MNbdn23HN19aS9eYpEnXl6RJ15ekrVuusbYMhHN1JRV93YrS7HeTrUE5MndHYr5H3QFkex2eSfaL9U53X9+seUvn0DUmadL1JWnS9SVp66ZrrO0CYTM7h2zLlo/m39zy30pyqfd+sqn2+blj9nX3x8g2aj7W3bUEpATSNSZp0vUladL1JWnrtmusrQJhM/sg2Z6Ynye7atKnzOyI3G8ZvcXHena1rmuBt5nZc8BHctu/7tllbUUq6BqTNOn6kjTp+pK0deM11vKV5fLtNXK/bfwcWOzuN5jZnmTvTNzm7ieVPwfoBW4BxgOfdfdfNHvu0hl0jUmadH1JmnR9Sdq6/RprWUbYzPrM7CLg62b2plwtynLgX3OHPAs8Csyw7JKihdS8uw96dpWbK919dqe++ZIuXWOSJl1fkiZdX5I2XWNZLckI597Iy4DdyC6vdxrwC+A/gT+SXZb2lWR/E3kemOjuXy16fo+7Z8rHFcnTNSZp0vUladL1JWnTNTasVX2EdwXmAG9y9+fMbBPwNuBY4DXA4UCfu680s8+R7VuHmZlnjYg3X1Kla0zSpOtL0qTrS9KmayynJaUR7r6VbLr91NymW8i24Xgb8BJ3vzP35k8g+8V4LPe81hY0S8fQNSZp0vUladL1JWnTNTaslV0jfgXMMbOX5u4uvBPYDuxjWacCfwEedvelLZyndC5dY5ImXV+SJl1fkjZdY7Q2EL4FeJrcbyPuvhJ4FTAh9xvHKuAEd/9EqyYoHU/XmKRJ15ekSdeXpE3XGK2rEcbdnzSzXwNfNrM1ZFPy24HB3P5VrZqbjAy6xiRNur4kTbq+JG26xrLaoY/wm8muVf0a4FJ3v7SlE5IRR9eYpEnXl6RJ15ekrduvsZYHwgBmNopsDfZg5MEiddA1JmnS9SVp0vUlaevma6wtAmERERERkWZr5c1yIiIiIiIto0BYRERERLqSAmERERER6UoKhEVERESkKykQFhEREZGupEBYRKQJzOxzZvavVfa/w8wOjTFOyXFmdqGZvTGpeYqIdBMFwiIi7eEdQGQgXH6cu3/W3W9MaU4iIiOaAmERkZSY2afN7AEzuwWYmdv2ITNbYWZ3mNkvzGy8mb0GWAR8zcxWmdmBuX+/M7PbzOx/zOyQkOOWmNl7cmM/amZfyu3rN7NXmNkNZvaQmX24aF6fyM3hTjP7fAveGhGRttDX6gmIiIxEZjYXOAmYQ/Z77UrgNuCX7v793DH/H3CGu3/bzJYC17r7z3P7/gh82N0fNLOjgO+4+3EBx5Wf+nF3n2Nm3wCWAMcAY4G7ge+a2QnADOBVgAFLzez17v7ntN4LEZF2pUBYRCQdrwN+5e7bAHIBLMBhuQB4d2ACcEP5E81sAvAa4GdFge6YmOfNn+cuYIK7Pwc8Z2Y7zGx34ITcv9tzx00gGxgrEBaRrqNAWESkuZYA73D3O8zsVGB+wDE9wBZ3n1PH+DtyHzNFn+cf95HNAn/J3b9Xx9giIiOKaoRFRNLxZ+AdZjbOzHYF3pbbvivwpJmNAt5fdPxzuX24+1bgETP7RwDLOrL8uDrdAJyeyzpjZvuZ2d4NjCci0rEUCIuIpMDdVwL/BdwBXA+syO36f4G/AX8B7it6yjXAJ8zsdjM7kGyQfIaZ3QHcA7w95Lha5/V74GpguZndBfycxgJrEZGOZe7e6jmIiIiIiDSdMsIiIiIi0pUUCIuIiIhIV1IgLCIiIiJdSYGwiIiIiHQlBcIiIiIi0pUUCIuIiIhIV1IgLCIiIiJdSYGwiIiIiHSl/x/2GvlCOZT7qwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# true outlier indices selection\n",
    "true_outlier = [df.anomaly for df in list_of_df]\n",
    "\n",
    "predicted_outlier[0].plot(figsize=(12,3), label='predictions', marker='o', markersize=5)\n",
    "true_outlier[0].plot(marker='o', markersize=2)\n",
    "plt.legend();"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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w+20SmQyrPRedZv44+cdEs7XXFZUcoQzfkO/uxJ49S/h7TasBra+Cuy5HzDikOC2+00DPnh1YJOlS5fiIx/5CEaOHAkA2HvvvQEAp512GgqFAg477DC89tprAJw5+MIXvoD7778fhUIB69evLx+bMGECZsyYAQA44ogjsGbNGmzatAlbtmzBMcccAwD46Ec/Wn4s8t13343HH3+8HG1+++238dxzz6GrqwuzZs3CQQcdBACYP38+HnjgAQwYMABz5szBqFGjAADnnHMO7r//fpx22mm+92PyI20ohAkhxIItR7gidG1VEgx9Gkw+T5azpwBEiQiburduRNiznYHT+UeEW2Xmgyk224/Ura9W/g0TwgkYOHBgebv0t+Cmm27CG2+8gUceeQQDBgzA+PHjsWPHjpr2HR0doekHqoprr70WJ5xwgm//fffdB6mqO1j9OqrfUfyoh0hCWEROBHANgA4A/6GqV1cdHwvgPwEMd9tcqap3pusqIYTki/1JacF3noelTjSCXDR5wHxFqyMcITWimSY1AN/Nlf0iRzhfe1lR/m5m/X5CIrdl7vgssPxHQM/5wEnfSmx27ty5OP300/GZz3wGI0aMwFtvvWVt+/bbb2OfffbBgAEDcO+992Lt2rWBYw8fPhxDhgzBww8/jKOOOgq33npr+dgJJ5yAG264AXPnzsWAAQPw7LPP4oADDgDgpEa8+OKLGDduHH72s5/hoosuwqxZs3DZZZfhzTffxF577YVbbrkFl156aeT3OWTIEGzZsiVy+yBChbCIdAC4HsDxANYBWCYiS1R1lafZlwD8XFVvEJHDANwJYHwqHhJCSIOw5wiXjlv6qf/fZiBtV4z5vNa20Z4sFy3vuIkmNYAoEeFkUdacq0a0xrSH0nR1hE/6VioCuMSUKVPwxS9+EbNnz0ZHRwfe/e53W9uec845OPnkkzFt2jT09PRg8uTJoeMvWrQIF154IQqFAmbPno1hw4YBAC644AKsWbMGM2fOhKpi1KhR5ZzfI488EpdccglWr16N97///Tj99NNRKBRw9dVX4/3vfz9UFSeddBJOPfXUyO9zwYIFuPjiizFo0CA8+OCDifKEo0SEZwFYraovAICI3ArgVABeIawAhrrbwwCkU9OCEEIaiD8bolYU2wWO/99mIJeb5QLmI0pqRqTyac00qQFknyNcf9+67OVr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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# true changepoint indices selection\n",
    "true_cp = [df.changepoint for df in list_of_df]\n",
    "\n",
    "predicted_cp[0].plot(figsize=(12,3), label='predictions', marker='o', markersize=5)\n",
    "true_cp[0].plot(marker='o', markersize=2)\n",
    "plt.legend();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Metrics calculation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "False Alarm Rate 15.4 %\n",
      "Missing Alarm Rate 39.93 %\n",
      "F1 metric 0.64\n"
     ]
    }
   ],
   "source": [
    "# binary classification metrics calculation\n",
    "binary = evaluating_change_point(true_outlier, predicted_outlier, metric='binary', numenta_time='30 sec')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Average delay 0 days 00:00:09.232142857\n",
      "A number of missed CPs = 74\n"
     ]
    }
   ],
   "source": [
    "# average detection delay metric calculation\n",
    "add = evaluating_change_point(true_cp, predicted_cp, metric='average_delay', numenta_time='30 sec')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Intersection of the windows of too wide widths for dataset 16\n",
      "Intersection of the windows of too wide widths for dataset 16\n",
      "Intersection of the windows of too wide widths for dataset 16\n",
      "Intersection of the windows of too wide widths for dataset 18\n",
      "Intersection of the windows of too wide widths for dataset 18\n",
      "Intersection of the windows of too wide widths for dataset 18\n",
      "Intersection of the windows of too wide widths for dataset 19\n",
      "Intersection of the windows of too wide widths for dataset 19\n",
      "Intersection of the windows of too wide widths for dataset 19\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 23\n",
      "Intersection of the windows of too wide widths for dataset 27\n",
      "Intersection of the windows of too wide widths for dataset 27\n",
      "Intersection of the windows of too wide widths for dataset 27\n",
      "Intersection of the windows of too wide widths for dataset 32\n",
      "Intersection of the windows of too wide widths for dataset 32\n",
      "Intersection of the windows of too wide widths for dataset 32\n",
      "Standart  -  27.09\n",
      "LowFP  -  11.06\n",
      "LowFN  -  32.68\n"
     ]
    }
   ],
   "source": [
    "# nab metric calculation\n",
    "nab = evaluating_change_point(true_cp, predicted_cp, metric='nab', numenta_time='30 sec')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## [Additional] localization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
